<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml"
      xmlns:ui="http://java.sun.com/jsf/facelets"
      xmlns:h="http://java.sun.com/jsf/html"
      xmlns:f="http://java.sun.com/jsf/core"
      xmlns:p="http://primefaces.org/ui">

    <ui:composition template="/pages/core/plantilla/plantillaPrincipal.xhtml">

        <ui:define name="contenido">
            <h:form onsubmit="return checkSubmit();"  id="frmPrincipal">
                <p:panel id="pgFormFilter" header="#{i18n['panel.titulo.cliente']}" style="#{applicationMBean.estiloTitulo}">
                    <h:panelGrid columns="10" cellspacing="5">
                        <h:outputLabel value="#{i18n['general.label.id']}" styleClass="label"/>
                        <p:inputText label="#{i18n['general.label.id']}"
                                     value="#{clienteMBean.dtoFiltro.id}"  onkeypress="return fn_validaTecla('entero',this)"
                                     styleClass="txtCampo" size="15">
                        </p:inputText>

                        <h:outputLabel value="#{i18n['cliente.nro.documento']}" styleClass="label"/>
                        <p:inputText label="#{i18n['cliente.nro.documento']}"
                                     value="#{clienteMBean.dtoFiltro.numeroDocumento}"  onkeypress="return fn_validaTecla('entero',this)"
                                     styleClass="txtCampo" size="30">
                        </p:inputText>

                        <h:outputLabel value="#{i18n['cliente.nombres']}" styleClass="label"/>
                        <p:inputText id="itDescripcion" label="#{i18n['cliente.nombres']}"  maxlength="100"
                                     value="#{clienteMBean.dtoFiltro.nombres}"
                                     size="60" styleClass="txtCampoObligatorio">
                            <f:validateLength maximum="100" minimum="0"/>
                        </p:inputText>
                    </h:panelGrid>
                    <f:facet name="footer">
                        <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.buscar.filtro.tip']}" accesskey="#{applicationMBean.keyBuscar}"
                                         value="#{i18n['general.button.buscar.filtro']}" ajax="false"
                                         style="#{applicationMBean.estilosBtnBuscar}" 
                                         actionListener="#{clienteMBean.buscar}">
                            <f:ajax  render="pnlTabla pgFormFilter"/>
                        </p:commandButton>
                        <p:commandButton title="#{i18n['general.button.nuevo.tip']}" accesskey="#{applicationMBean.keyNuevo}"
                                         icon="ui-icon ui-icon-plus"
                                         style="#{applicationMBean.estilosBtnNuevo}" 
                                         value="#{i18n['general.button.nuevo']}" 
                                         ajax="false"                                        
                                         action="#{clienteMBean.nuevo}"
                                         > 
                        </p:commandButton>
                        <p:spacer width="20"/>
                        <h:outputText  value="#{clienteMBean.lista.size()} #{i18n['form.general.mensaje.cantidad.encontrada']}" styleClass="mensaje" rendered="#{clienteMBean.lista!=null}"/>
                    </f:facet>
                </p:panel>

                <p:panel id="pnlTabla" header="#{i18n['general.panel.titulo.busqueda.resultado']}"  style="#{applicationMBean.estiloTitulo}" rendered="#{clienteMBean.lista!=null &amp;&amp;clienteMBean.lista.size()>0}">
                    <div class="info_busqueda">
                        <h:panelGrid styleClass="tabla_dinam">
                            <p:dataTable id="tblPrincipal" value="#{clienteMBean.lista}" var="dto" paginatorPosition="top"
                                         paginator="true" rows="#{sessionMBean.cantidadRegistros}"  widgetVar="widTable" rowKey="#{dto.id}">
                                <p:column style="text-align:center;font-size: 10px">
                                    <h:panelGrid columns="10" cellspacing="5" styleClass="estiloPanelGrid">
                                        <p:commandButton icon="ui-icon ui-icon-search" title="#{i18n['general.button.ver.tip']}"
                                                         action="#{clienteMBean.ver}" ajax="false">
                                            <f:setPropertyActionListener value="#{dto}" target="#{clienteMBean.dto}"/>
                                        </p:commandButton> 

                                        <p:commandButton icon="ui-icon ui-icon-pencil" title="#{i18n['general.button.editar.tip']}"
                                                         action="#{clienteMBean.editar}" ajax="false"
                                                         >
                                            <f:setPropertyActionListener value="#{dto}" target="#{clienteMBean.dto}"/>
                                        </p:commandButton>
                                    </h:panelGrid>
                                </p:column>

                                <p:column headerText="#{i18n['general.label.id']}"  styleClass="general">
                                    <h:outputText value="#{dto.id}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.nro.documento']}" styleClass="general">
                                    <h:outputText value="#{dto.numeroDocumento}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.nombres']}" styleClass="general">
                                    <h:outputText value="#{dto.nombres}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.apellido.paterno']}" styleClass="general">
                                    <h:outputText value="#{dto.apellidoPaterno}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.apellido.materno']}" styleClass="general">
                                    <h:outputText value="#{dto.apellidoMaterno}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.telefono.domiciliar']}" styleClass="general">
                                    <h:outputText value="#{dto.telefonoDomiciliar}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.direccion.domiciliar']}" styleClass="general">
                                    <h:outputText value="#{dto.direccionDomiciliar}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.referencia.domiciliar']}" styleClass="general">
                                    <h:outputText value="#{dto.referenciaDomiciliar}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.telefono.laboral']}" styleClass="general">
                                    <h:outputText value="#{dto.telefonoLaboral}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.direccion.laboral']}" styleClass="general">
                                    <h:outputText value="#{dto.direccionLaboral}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.referencia.laboral']}" styleClass="general">
                                    <h:outputText value="#{dto.referenciaLaboral}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.telefono.celular1']}" styleClass="general">
                                    <h:outputText value="#{dto.telefonoCelular1}" styleClass="general"/>
                                </p:column>
                                <p:column headerText="#{i18n['cliente.telefono.celular2']}" styleClass="general">
                                    <h:outputText value="#{dto.telefonoCelular2}" styleClass="general"/>
                                </p:column>
                            </p:dataTable>        
                        </h:panelGrid>
                    </div>
                </p:panel>
            </h:form>
        </ui:define>
    </ui:composition>
</html>